<?php
/*
 * [JINYUN!] (C)2001-2099 Jinyunweb.com
 * This is NOT a freeware, use is subject to license terms
 * $Id: 2017-12-13 03:39:35 apple $
*/
/*
	自定义小程序
	diy小程序页面功能：设计小程序
	业务流程：选择模版——创建小程序
	注意事项：微官网小程序和diy小程序为同一个页面的不同表现形式
	选择模版的话，需要一个小程序模版库，模版库参考微站模版模版库
*/
defined('BY_JYA') or exit('error');
$_RQ['op']=$_RQ['op']?$_RQ['op']:'list';
$return=array();
if($_RQ['op']=='list'){
	$return['params']['group_id']='all';
	exi($return);
}
if($_RQ['op']=='my'){
	$return['params']['group_id']='all';
	exi($return);
}
if($_RQ['op']=='add'){
	//添加小程序
	$id=intval($_RQ['id']);
	if($_SESSION['account']['groupid']){
			$limit=pdo_getcolumn('core_account_group',array('id'=>$_SESSION['account']['groupid']),'wxapp_num');
			$num=pdo_count('core_account_wxapp',array('uniacid'=>$_SESSION['uniacid']));
			if($num>=$limit){
				exi('您所添加的小程序已达到最大值，如需创建更多，请联系管理员提升权限或者升级套餐！','error');
			}
	}
	if($id){
		//判断是否免费、是否购买	
		//读取数据
		$data=pdo_get('core_mobile_template',array('id'=>$id),array('id','title','items','setting','pages','plugin_name','image'));
		$insert=array(
			'title'=>$data['title'],
			'items'=>$data['items'],
			'setting'=>$data['setting'],
			'plugin_name'=>$data['plugin_name']?:'core',
			'uniacid'=>$_SESSION['uniacid'],
			'createtime'=>time(),
		);		
		pdo_insert('core_mobile_web',$insert);
		$web_id=pdo_insertid();
		$insert['web_id']=$web_id;
		$insert['type']=8;
		pdo_insert('core_account_wxapp',$insert);
		unset($insert['type']);
		$insert['is_open']=1;
		$insert['template_id']=$data['id'];
		pdo_insert('core_account_web_tpl',$insert);
		$tpl_id=pdo_insertid();
		//获取开发者自己的组件，并上传
		$local_blocks=pdo_getall('core_mobile_blocks',array('madehtml <>'=>''),array('cloud_id','default','madehtml'),'cloud_id');
		if($local_blocks){
					foreach($local_blocks as &$row){
						$row['madehtml']=cfc('files')->source_read($row['madehtml']);
						$row['default']=$row['default']?json_decode($row['default'],true):array();
					}
		}
		//设计完成后，对接云端生成页面
		$post=array('items'=>base64_encode($insert['items']),'setting'=>base64_encode($insert['setting']),'local_blocks'=>$local_blocks);
		$html=cloud_request('diy.mobile.made',$post);
		//将获得生成的html代码存入文件
		$item=pdo_get('core_account_web_tpl',array('id'=>$tpl_id,'uniacid'=>$_SESSION['uniacid']),array('html'));
		$html=cfc('files')->source_save($html,'page','html','微站页面：'.$tpl_id,$item['html']);
		if(!$item['html']){
			$update['html']=$html;
		}
		$update['updatetime']=TIMESTAMP;
		pdo_update('core_account_web_tpl',$update,array('id'=>$tpl_id,'uniacid'=>$_SESSION['uniacid']));
		$pages=json_decode($data['pages'],true);
		foreach($pages as &$pv){
			$pv['uniacid']=$_SESSION['uniacid'];
			$pv['createtime']=TIMESTAMP;
			$pv['tpl_id']=$tpl_id;
			$pv['web_id']=$web_id;
			pdo_insert('core_account_web_tpl',$pv);
		}		
		exi('','success','/wxapp.list/design/id='.$tpl_id);
	}else{
		exi('请选择模板！','error');
	}	
}